home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
F-French
/
(c)f1.d64
/
tondeuse
(
.txt
)
< prev
Wrap
Commodore BASIC
|
2007-02-04
|
5KB
|
142 lines
1 REM LAWN MOWER
100 VC=53248:POKEVC+32,13:POKEVC+33,6:PRINTCHR$(147)
110 DIMMT$(4),ST%(20,1)
120 FORX=0TO20:FORY=0TO1:READZ:ST%(X,Y)=Z:NEXTY,X
130 FORX=0TO4:READX$:MT$(X)=X$:NEXTX
140 MC=54272:FORX=MCTO54296:POKEX,0:NEXTX
150 GOSUB4000
155 PRINT" TON PERE TE PRETE $15 POUR QUE TU"
160 PRINT" PUISSE OFFRIR UN SERVICE DE TONTE DE PELOUSE DURANT L ETE."
165 PRINT" A LA FIN DE L ETE, TU DOIS REMBOURSER"
170 PRINT" LES $15 A TON PERE."
175 PRINT" TU ES PAYE $5 PAR TONTE,MAIS TU DOIS"
180 PRINT" DEDUIRE DE TON REVENU LES DEPENSES"
185 PRINT" ENCOURUES, COMME:"
190 PRINT" LA GASOLINE POUR LA TONDEUSE;"
193 PRINT" L'HUILE POUR LA TONDEUSE;"
196 PRINT" LES SACS POUR RAMASSER L'HERBE;"
200 PRINT" L'AIGUISAGE DE LA LAME."
210 GOSUB1000:GOSUB1100
220 PRINT"[147] SI VOUS MANQUEZ DE MATERIEL DURANT LE"
225 PRINT" MOIS, OU SI VOTRE LAME DE TONDEUSE NE"
230 PRINT" COUPE PLUS DU A UN MANQUE D'AIGUISAGE"
235 PRINT" D'AIGUISAGE, TU PERDS TON REVENU POUR"
240 PRINT" LE RESTE DU MOIS."
245 PRINT" LE BUT DU JEU EST D'ACHETER TON"
250 PRINT" MATERIEL DE FACON EFFICACE POUR"
255 PRINT" QUETU PUISSE GAGNER LE PLUS"
260 PRINT" POSSIBLE DURANT L'ETE."
270 GOSUB1100:POKEVC+33,15:PRINT"";CHR$(147)
300 MO=1500:GA=0:OA=0:BA=0:SA=0
310 FORL1=0TO4:LM=0:MM=0
320 X=INT(RND(1)*71)+80:D1$="GAZ":D2$="LITRES":GOSUB1200
330 IFY=0THEN350
340 GA=GA+(Y*100):MO=MO-(X*Y)
350 X=INT(RND(1)*51)+90:D1$="HUILE":D2$="PINTE":GOSUB1200
360 IF Y=0THEN380
370 OA=OA+(Y*100):MO=MO-(X*Y)
380 X=INT(RND(1)*151)+200:D1$="SACS D'HERBE":D2$="DOUZAINE":GOSUB1200
390 IFY=0THEN410
400 BA=BA+(Y*12):MO=MO-(X*Y)
410 X=INT(RND(1)*201)+400:GOSUB1300:PRINT"[147] MOIS = ";MT$(L1)
420 PRINT" VEUX TU FAIRE AIGUISER"
422 PRINT" LA LAME DE LA TONDEUSE?"
425 PRINT" COUT = ";X$
430 PRINT" INDIQUER O[146] OU N[146]"
440 GETX$:IFX$=""THEN440
450 IF X$="N"THEN500
460 IF X$<>"O"THEN440
470 MO=MO-X
480 X=INT(RND(1)*21)+20:SA=SA+X
500 GC=INT(RND(1)*51)+20:OC=INT(RND(1)*31)+10
510 BC=INT(RND(1)*4)+1
520 IF MO<0THENGC=GC*2:OC=OC*2:BC=BC*2
530 X=1:IF(GA-GC)<0THEN700
540 X=2:IF(OA-OC)<0THEN700
550 X=3:IF(BA-BC)<0THEN700
560 X=4:IF(SA-1)<0THEN700
570 GA=GA-GC:OA=OA-OC:BA=BA-BC:SA=SA-1
580 LM=LM+1:MM=MM+500
600 PRINT"[147] ";MT$(L1):PRINT" PELOUSE NUMERO ";LM
610 X=MM:GOSUB1300:PRINT" ARGENT GAGNE = ";X$
620 PRINT" GAZ RESTANT =";INT((GA+100)/100)
625 PRINT" HUILE RESTANT =";INT((OA+100)/100)
630 PRINT" SACS RESTANT =";BA
640 FORX=2TO10STEP2:GOSUB660:NEXTX
650 FORX=10TO0STEP-2:GOSUB660:NEXTX:GOTO500
660 POKEMC+0,0:POKEMC+1,10:POKEMC+5,15:POKEMC+6,15:POKEMC+7,0:POKEMC+8,0
670 POKEMC+11,15:POKEMC+12,15
675 POKEMC+24,X:POKEMC+8,40:POKEMC+4,129:POKEMC+10,17
680 FORY=1TO100:NEXTY
685 POKEMC+4,128:POKEMC+10,16
690 FORY=1TO20:NEXTY
695 RETURN
700 POKEMC+0,0:POKEMC+1,25:POKEMC+7,0:POKEMC+8,0:POKEMC+5,15:POKEMC+6,15
710 POKEMC+24,9:POKEMC+4,33:FORY=1TO500:NEXTY
715 POKEMC+4,32:FORY=1TO20:NEXTY:POKEMC+24,0:PRINTCHR$(147);
718 PRINT""
720 ONXGOTO730,740,750,760
730 PRINT" PANNE D'ESSENCE![146]":GOTO770
740 PRINT" PANNE D'HUILE![146]":GOTO770
750 PRINT" MANQUE DE SACS[146]":GOTO770
760 PRINT" LA LAME NE COUPE PLUS![146]"
770 PRINT" PELOUSE TONDUE = ";LM
780 X=MM:GOSUB1300
785 PRINT" ARGENT GAGNE = ";X$
790 MO=MO+MM:X=MO:GOSUB1300:PRINT" REVENU BRUT = ";X$
795 GOSUB1100:NEXTL1
800 PRINT"[147]";SPC(14);"ETE TERMINE![146]":X=MO:GOSUB1300
805 PRINT" ARGENT EN MAIN = ";X$
810 X=1500:GOSUB1300:PRINT" MOINS EMPRUNT = ";X$
820 MO=MO-1500:X=MO:GOSUB1300:PRINT" REVENU NET = ";X$
830 PRINT" AUTRE PARTIE? (O[146] OU N[146])"
840 GETX$:IFX$=""THEN840
850 IF X$="O"THEN300
860 IF X$<>"N"THEN840
870 PRINTCHR$(147)
880 END
1000 POKEMC+24,15:POKEVC+21,1
1005 FORX=0TO20:TT$=RIGHT$(TT$,LEN(TT$)-2):TT$=TT$+" "
1010 PRINT"";TT$;
1015 Y=INT(ST%(X,0)/256)
1020 POKEMC+0,ST%(X,0)-(Y*256)
1025 POKEMC+1,Y:POKEMC+4,17
1030 Y=PEEK(VC+0)-14
1035 IFY<1THENY=255:POKEVC+0,Y:POKEVC+16,0
1040 POKEVC+0,Y
1045 FORY=1TOST%(X,1)*60:NEXTY
1050 POKEMC+4,16:FORY=1TO30:NEXTY,X
1055 POKEMC+24,0:POKEVC+21,0
1060 PRINT"";SPC(15);"TONDEUSE[146]";
1070 RETURN
1100 PRINT" (PRESSER UNE TOUCHE)";
1110 GETX$:IFX$=""THEN1110
1120 RETURN
1200 PRINT"[147] MOIS = ";MT$(L1):GOSUB1300
1210 PRINT" ITEM = ";D1$:PRINT" COUT = ";X$;" PAR ";D2$
1220 PRINT" COMBIEN EN VOULEZ VOUS?"
1225 PRINT" IMDIQUER DE 0[146] A 9[146]"
1230 GETD1$:IF D1$=""THEN1230
1240 IFD1$<"0"ORD1$>"9"THEN1230
1250 Y=VAL(D1$):RETURN
1300 X$=STR$(X):Z=LEN(X$)
1310 IFZ<3THENX$=LEFT$(X$,1)+"$0.0"+RIGHT$(X$,1):GOTO1370
1320 IFZ<4THENX$=LEFT$(X$,1)+"$0."+RIGHT$(X$,2):GOTO1370
1330 Z=Z-3:X$=LEFT$(X$,1)+"$"+MID$(X$,2,Z)+"."+RIGHT$(X$,2)
1370 IFLEFT$(X$,1)=" "THENX$=RIGHT$(X$,LEN(X$)-1):GOTO1370
1380 RETURN
3000 DATA8583,2,4291,2,4291,2,5407,1,5728,2,10814,2,10814,2,9634,2
3010 DATA8583,1,7217,2,8583,2,4291,2,4291,2,5407,2,6430,2,6430,2
3020 DATA 6430,2,7217,2,8101,2,8101,2,8583,2
3100 DATAMAI,JUIN,JUILLET,AOUT,SEPTEMBRE
3200 DATA0,0,0,0,0,0,0,0,0,0,0,0,0,3,128,0,7,128,0,3,128,0,1,0,0,3
3210 DATA128,0,3,128,0,31,128,0,35,128,0,67,128,0,131,128
3220 DATA1,3,128,2,3,128,4,2,64,8,4,32,80,8,16,224,4,8,80,2,4,0
4000 REM *** SETUP FOR SPRITE ***
4010 FORX=832TO832+63:READZ:POKEX,Z:NEXTX
4020 POKEVC+0,60:POKEVC+1,55:POKEVC+16,1:POKEVC+23,1:POKEVC+28,0
4030 POKEVC+29,1:POKEVC+39,0:POKE2040,13
4040 POKEMC+0,0:POKEMC+1,0:POKEMC+5,79:POKEMC+6,129
4050 TT$=" TONDEUSE"
4060 RETURN